#! /bin/bash
export LANG=zh_CN.UTF-8
HIVE_HOME=/usr/bin/hive

${HIVE_HOME} -S -e "

CREATE DATABASE IF NOT EXISTS edu_dws;

-- 考勤宽表
CREATE table IF NOT EXISTS edu_dws.t_signin_detail(
    id                INT COMMENT '主键id',
    normal_class_flag INT COMMENT '是否正课 1 正课 2 自习',
    time_table_id     INT COMMENT '作息时间id',
    class_id          INT COMMENT '班级id',
    student_id        INT COMMENT '学员id',
    signin_time       STRING COMMENT '签到时间',
    signin_date       STRING COMMENT '签到日期',
    share_state       INT COMMENT '共享屏幕状态 0 否 1是  在上午或下午段有共屏记录，则该段所有记录该字段为1，内网默认为1 外网默认为0 ',
    morning_template_id   INT COMMENT '上午出勤模板id',
    morning_begin_time    STRING COMMENT '上午开始时间',
    morning_end_time      STRING COMMENT '上午结束时间',
    afternoon_template_id INT COMMENT '下午出勤模板id',
    afternoon_begin_time  STRING COMMENT '下午开始时间',
    afternoon_end_time    STRING COMMENT '下午结束时间',
    evening_template_id   INT COMMENT '晚上出勤模板id',
    evening_begin_time    STRING COMMENT '晚上开始时间',
    evening_end_time      STRING COMMENT '晚上结束时间',
    use_begin_date        STRING COMMENT '使用开始日期',
    use_end_date          STRING COMMENT '使用结束日期',
    base_id             INT COMMENT '课程主表id',
    class_date          STRING COMMENT '上课日期',
    content             STRING COMMENT '课程内容',
    teacher_id          INT COMMENT '老师id',
    teacher_name        STRING COMMENT '老师名字',
    job_number          STRING COMMENT '工号',
    classroom_id        INT COMMENT '教室id',
    classroom_name      STRING COMMENT '教室名称'
)PARTITIONED BY (dt string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '/t'
STORED AS ORC
TBLPROPERTIES ('orc.compress' = 'snappy');

-- 请假宽表
CREATE table IF NOT EXISTS edu_dws.t_leave_detail(
    class_id                        INT COMMENT '班级id',
    student_id                      INT COMMENT '学员id',
    leave_type                      INT COMMENT '请假类型  1 请假 2 销假',
    leave_reason                    INT COMMENT '请假原因  1 事假 2 病假',
    begin_time                      STRING COMMENT '请假开始时间',
    begin_time_type                 INT COMMENT '1：上午 2：下午',
    end_time                        STRING COMMENT '请假结束时间',
    end_time_type                   INT COMMENT '1：上午 2：下午',
    days                            STRING COMMENT '请假/已休天数',
    cancel_state                    INT COMMENT '撤销状态  0 未撤销 1 已撤销',
    cancel_time                     STRING COMMENT '撤销时间',
    old_leave_id                    INT COMMENT '原请假id，只有leave_type =2 销假的时候才有',
    leave_remark                    STRING COMMENT '请假/销假说明',
    valid_state                     INT COMMENT '是否有效（0：无效 1：有效）',
    school_id                       INT COMMENT '校区id',
    subject_id                      INT COMMENT '学科id',
    studying_student_count          INT COMMENT '在读班级人数',
    studying_date                   STRING COMMENT '在读日期',
    morning_template_id             INT COMMENT '上午出勤模板id',
    morning_begin_time              STRING COMMENT '上午开始时间',
    morning_end_time                STRING COMMENT '上午结束时间',
    afternoon_template_id           INT COMMENT '下午出勤模板id',
    afternoon_begin_time            STRING COMMENT '下午开始时间',
    afternoon_end_time              STRING COMMENT '下午结束时间',
    evening_template_id             INT COMMENT '晚上出勤模板id',
    evening_begin_time              STRING COMMENT '晚上开始时间',
    evening_end_time                STRING COMMENT '晚上结束时间',
    use_begin_date                  STRING COMMENT '使用开始日期',
    use_end_date                    STRING COMMENT '使用结束日期'
)PARTITIONED BY (dt string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '/t'
STORED AS ORC
TBLPROPERTIES ('orc.compress' = 'snappy');
"